Virtual switch fabrics in converged networks

ABSTRACT

A Fibre Channel over Ethernet (FCoE) network can be inexpensively extended by additional switches ( 220   x ) that do not have a full FCoE functionality, e.g. do not have full E-port functionality. The additional switches may or may not have unique Domain IDs. A virtual switch fabric can be extended by such additional switches.

BACKGROUND

The present disclosure relates to information handling systems, and moreparticularly to computer networks.

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores,and/or communicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Because technology and information handling needs andrequirements vary between different users or applications, informationhandling systems may also vary regarding what information is handled,how the information is handled, how much information is processed,stored, or communicated, and how quickly and efficiently the informationmay be processed, stored, or communicated. The variations in informationhandling systems allow for information handling systems to be general orconfigured for a specific user or specific use such as financialtransaction processing, airline reservations, enterprise data storage,or global communications. In addition, information handling systems mayinclude a variety of hardware and software components that may beconfigured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

Computer networks are used for many purposes, including email, webbrowsing, accounting, and data storage (cloud storage for example) oflarge amounts of data. Since these purposes vary, different networkingtechnologies are suitable for different purposes, but in a multipurposeenvironment these technologies may converge. For example, Ethernet is apopular for connection to the Internet in performing web browsing,email, and other tasks, because Ethernet is inexpensive and easy tomanage. However, Ethernet security is low because an unauthorizedcomputer can be easily connected to the Ethernet cable; and Ethernetdoes not provide reliable message delivery to the destination becausethe destination may discard incoming messages in case of bufferoverflow. The security and reliable message delivery have to be providedby other network layers.

In contrast, Fibre Channel (FC) networks provide better security andmore reliable message delivery, and are widely used in Storage AreaNetworks (SANs) for data storage, e.g. at data centers providing cloudstorage. FC networks have been standardized by the InternationalCommittee for Information Technology Standards (INCITS), which isaccredited by American National Standards Institute (ANSI). However, FCnetworks are more expensive to build and operate. For example, in an FCnetwork, the frames are forwarded based on logical addresses, calledFC_ID or FCID, rather than physical (MAC) addresses as is common inEthernet. Therefore, FC networks require logical address management. Inparticular, an FC switch has to receive a logical identifier calledDomain ID; Domain IDs are part of every FCID of an end station port(N-port) connected to the port, and the FC frames are forwarded fromswitch to switch based on the destination domain IDs. Domain IDs aregenerated in a discovery process in which the switches discover eachother, select a principal switch, and have their Domain IDs assigned bythe principal switch. This is an expensive process, requiring extensivecommunication via the switches' E-ports, i.e. the ports connected tointer-switch links (ISLs). When the network is extended by a new switch,additional E-port communication is needed to assign a Domain ID to thenew switch. See Mark Lippitt and Erik Smith, “Network Storage Conceptsand Protocols. Designing a SAN. FC SAN Concepts. IP SAN Concepts”, EMCCorporation, 2014, incorporated herein by reference. In contrast, anEthernet switch forwards frames based on the physical (MAC) addresses ofend stations, and these MAC addresses are discovered by the Ethernetswitch dynamically as the source addresses of the frames received by theswitch. Therefore, Ethernet does not need a logical address assignmentprocess when a new Ethernet switch is added to the network. Even if theMAC addresses are virtual (logical or non-physical), they are ofteneasier to maintain than FCIDs or Domain IDs.

To reduce cabling and other infrastructure costs in a multi-purposenetwork, a network component (e.g. switch or link) may combine FC andEthernet technologies. One industry standard defining a merger of the FCand Ethernet technologies is Fibre Channel over Ethernet, or FCoE, whichuses the Ethernet medium to carry both FC and Ethernet data frames. Whenused for FC, the FC frames are encapsulated into Ethernet frames, andthe Ethernet frames are transmitted using “lossless Ethernet” protocolswhich are strengthened with respect to security and reliable messagedelivery. Thus, a network may include FCoE segments, FC segments, andEthernet segments. An FCoE switch has FCoE ports, and may have FC orEthernet ports. See Mark Lippitt, Erik Smith, David Hughes, “FibreChannel over Ethernet (FCoE). Data Center Bridging. Concepts andProtocols”. EMC Corporation, 2015, incorporated herein by reference.

FCoE is similar to FC in discovery, login, Fabric controller, and otherservices, and in FC frame forwarding—FCoE frames are forwarded based onFCIDs. FCoE requires FCID assignments, and requires unique Domain IDsfor the FC and FCoE switches. Extending an FCoE network by an additionalFCoE switch still requires Domain ID assignment for the new switch.

One technique simplifying the FCID maintenance and other administrativetasks is to define virtual fabrics (vfabrics). A virtual fabric can bedefined by a collection of switches' ports belonging to the fabric. Aswitch may have ports in different virtual fabrics, and multipleswitches may have ports in the same virtual fabric. Each data flow isconfined by the switches to a single virtual fabric. Each virtual fabricis managed separately to simplify management and provide trafficisolation and greater security. Each virtual fabric has its ownprincipal switch and its own Domain IDs; a switch may have differentDomain IDs in different virtual fabrics. In FCoE networks, one candefine a separate virtual Ethernet LAN (VLAN) for each vfabric. An FCoEnetwork may include Ethernet switches (e.g. passthrough switches) thatignore the FCIDs or other FC components but can still limit the FCoEtraffic to a single vfabric if they limit the Ethernet traffic to thecorresponding VLAN.

Obviously, combining FC with Ethernet leads to inefficiencies, and it isdesirable to provide simpler, less expensive solutions for combiningdifferent types of networks.

SUMMARY

This section summarizes some features of the invention. Other featuresmay be described in the subsequent sections. The invention is defined bythe appended claims, which are incorporated into this section byreference.

Some embodiments of the present invention simplify vfabricconfiguration. Some embodiments avoid the Domain ID assignment process,and simplify the vfabric extension when a new FCoE switch or link isadded to the network.

The invention is not limited to Ethernet or FC or FCoE. Otherembodiments and variations are within the scope of the invention, asdefined by the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a computer architecture used in someembodiments of the present disclosure.

FIGS. 2, 3, 4 are block diagrams of computer networks used in someembodiments of the present disclosure.

DETAILED DESCRIPTION OF SOME EMBODIMENTS

Before describing some embodiments of the invention, a typical computerwill be described with reference to FIG. 1. This computer is an exampleof an information handling system.

For purposes of this disclosure, an information handling system mayinclude any instrumentality or aggregate of instrumentalities operableto compute, calculate, determine, classify, process, transmit, receive,retrieve, originate, switch, store, display, communicate, manifest,detect, record, reproduce, handle, or utilize any form of information,intelligence, or data for business, scientific, control, or otherpurposes. For example, an information handling system may be a personalcomputer (e.g., desktop or laptop), tablet computer, mobile device(e.g., personal digital assistant (PDA) or smart phone), server (e.g.,blade server or rack server), a network storage device, or any othersuitable device and may vary in size, shape, performance, functionality,and price. The information handling system may include random accessmemory (RAM), one or more processing resources such as a centralprocessing unit (CPU) or hardware or software control logic, ROM, and/orother types of nonvolatile memory. Additional components of theinformation handling system may include one or more disk drives, one ormore network ports for communicating with external devices as well asvarious input and output (I/O) devices, such as a keyboard, a mouse,touchscreen and/or a video display. The information handling system mayalso include one or more buses operable to transmit communicationsbetween the various hardware components.

In one embodiment, IHS 100, FIG. 1, includes a processor 102, which isconnected to a bus 104. Bus 104 serves as a connection between processor102 and other components of IHS 100. An input device 106 is coupled toprocessor 102 to provide input to processor 102. Examples of inputdevices may include keyboards, touchscreens, pointing devices such asmouses, trackballs, and trackpads, and/or a variety of other inputdevices known in the art. Programs and data are stored on a mass storagedevice 108, which is coupled to processor 102. Examples of mass storagedevices may include hard discs, optical disks, magneto-optical discs,solid-state storage devices, and/or a variety other mass storage devicesknown in the art. IHS 100 further includes a display 110, which iscoupled to processor 102 by a video controller 112. A system memory 114is coupled to processor 102 to provide the processor with fast storageto facilitate execution of computer programs by processor 102. Examplesof system memory may include random access memory (RAM) devices such asdynamic RAM (DRAM), synchronous DRAM (SDRAM), solid state memorydevices, and/or a variety of other memory devices known in the art. Inan embodiment, a chassis 116 houses some or all of the components of IHS100. It should be understood that other buses and intermediate circuitscan be deployed between the components described above and processor 102to facilitate interconnection between the components and the processor102.

In FC or FCoE networks, the bus 104 is replaced by a switch fabric 214(FIG. 2), which includes one or more FC FCoE switches 220, such as220.1, 220.2, 220.3 in FIG. 2. As used herein, an FCoE switch is any FCswitch that has at least one FCoE port and which can forward FC framesbased on FCIDs. Each switch 220 may have an architecture of FIG. 1 orsome other type. Switch fabric 214 interconnects network nodes 224(224.1, 224.2, 224.3, 224.4, etc.), each of which may be as in FIG. 1 orsome other type. Each node 224 can function as a host (or “initiator”)or a target (storage system), or both. An initiator sends data accesscommands to the target, e.g. to read or write the target's storage (suchas disks). The target executes the commands. The commands can be similarto SCSI (Small Computer System Interface). For example, a command canspecify the target's disk sector to read or write. The data are read orwritten in fixed-size blocks. In a data center, initiators can beservers connected to the Internet or some other network. The targets canprovide large storage, possibly suitable for a data center, e.g. forcloud storage.

Additional computers 230 communicate with the FCoE network via Ethernetor other network protocols. Computers 230 can be Ethernet switchesconnecting the FCoE network to Ethernet segments or other FCoE segments.Computers 230 can also be end stations used, for example, by a networkadministrator to configure the switch ports for virtual fabrics, or toperform other network management functions. Computers 230 and 224 can beend stations used for non-SAN functions, e.g. web browsing oraccounting.

In the example of FIG. 2, switch fabric 214 includes three virtualswitch fabrics, denoted respectively as vf1, vf2, vf3. For each switchport P1, P2, etc., the virtual fabric is shown next to the port. Forexample, ports P1 and P2 of switch 220.1 belong to vfabric vf1.

In operation, each switch 220 is assigned a domain ID. The domain IDsare shown as DID1, DID2, DID3 in FIG. 2. In conventional FC and FCoEnetworks, each domain ID is unique in each virtual fabric (but a switchmay have different domain IDs in different vfabrics).

Each link of an FCoE network can carry both Ethernet and FCoE traffic.An FCoE frame can be an FC frame encapsulated into an Ethernet frame. Alink can be an Ethernet segment, or can be a switched Ethernet networkwith Ethernet switches (passthrough switches, not shown). FCoE frameformat used in communication between initiators and targets is shown inTable 1 below. In parentheses in Table 1, an example is given for aframe originated at node 224.1 with destination 224.3, when the frame iscarried on the FCoE link from port P2 of switch 220.1 to port P1 ofswitch 220.2. Some frame fields are not shown.

TABLE 1 FCoE FRAME FORMAT Length in Bits Content 48 Destination MACaddress (MAC address of port P1 of switch 220.2) 48 Source MAC address(MAC address of port P2 of switch 220.1) . . . . . . 32 SOF - Start ofFrame, indicating the start of encapsulated FC frame . . . . . . 24Destination FCID (FCID of Port P1 of node 224.3) . . . . . . 24 SourceFCID (FCID of Port P1 of node 224.1) . . . . . . . . . FC Payload . . .. . .

Table 2 below shows FCID format, such as used for the Destination FCIDand Source FCID fields in Table 1:

TABLE 2 FCID FORMAT Length in Bits Content 8 Domain ID (DID2 for FCID ofnode 224.3; DID1 for nodes 224.2 or 224.7) 8 Area ID 8 Port ID

The Area ID and Port ID together identify a node 224 port connected tothe switch identified by the Domain ID.

A port of a switch 220 or node 224 can be a port-channel, i.e. a logicalport corresponding to multiple physical ports. A port-channel of a node224 has a single FCID and a single logical MAC address. Each frametransmitted or received on a port-channel is actually transmitted orreceived on a single physical port. Multiple physical ports can transmitor receive respective different Ethernet frames in parallel, like in alink aggregation group (LAG).

In switch 224.1, ports P4 and P6 are unused, and can be used to connectother switches to extend the switch fabric. In the example of FIG. 3,additional switches 220 x (220 x.1, 220 x.2, 220 x.3) are connected toextend the virtual fabric vf1. In other embodiments, multiple virtualfabrics can be extended. The additional switches 220 x may include portsof other virtual fabrics.

In virtual fabric vf1, all the additional switches 220 x have domain IDof DID1, same as for switch 220.1. (Domain IDs can also be different fordifferent switches in vfabric vf1 as explained below.) The additionalswitches 220 x may have other domain IDs in other virtual fabrics.

The network of FIG. 3 may include the same components as in FIG. 2, andin particular may include switches 220.2 and 220.3 and nodes 224connected as in FIG. 2. Some of these components are omitted forsimplicity.

In switches 220 x, the switch ports connected to other switches arenamed vX1, vX2, etc. for convenience of description. For example, portsP4 and P6 of switch 220.1 are named as vX1 and vX2 respectively. Theinvention is not limited to any particular port names. Also, theswitches 220.1, 220 x may or may not be fully functional FCoE switches.For example, the vX ports do not need the E-port functionality in someembodiments because these ports do not execute domain ID assignmentprotocols.

In vfabric vf1, each switch 220.1, 220 x can be thought of as part of anextension of virtual fabric vf1. The switches 220.1, 220 x are notidentified by the Domain ID because they have the same Domain ID (DID1).Each switch is identified by vfabric extension identifier vX ID. Sincethere are four switches, vX ID can be two bits. In the example of FIG.3, the vX IDs for switches 220.1, 220 x.1, 220 x.2, 220 x.3 arerespectively as 00 (binary), 01, 10, 11. The vx IDs can be assigned by anetwork administrator or by software for example.

In some embodiments, vX ID is encoded in FCID of each node 224 connectedto the extended vfabric. For example, vx ID can be encoded in two bitsin predetermined bit positions in FCID. Suppose, for example, that vX IDis encoded in the two most significant bits of Area ID (see Table 2),and let us assume that DID1=10 (decimal), i.e. 1010 (binary). Then theFCIDs may be as follows:

TABLE 3 FCIDs OF SOME PORTS Domain ID Area ID Port ID Port (binary)(binary) (binary) P1 of 224.1 00001010 00000000 (vX ID = 00) 00000000 P1of 224.2 00001010 00000001 (vX ID = 00) 00000000 P1 of 224.10 0000101001000000 (vX ID = 01) 00000000

In some embodiments, vX ID is encoded in some other bit positions, forexample, in Port ID or Domain ID. If Domain ID is used, then the DomainIDs will be different for different switches within the vfabricextension switches 220 x. If the vfabric includes ports of otherswitches, such as 220.2 in FIG. 2, then the Domain IDs of the vfabricextension switches are made unique, by a network administrator forexample.

In some embodiments, each switch 220 stores a profile for each of itsports in the switch's memory, as is common in FC and FCoE networks. Theswitch also stores in its memory, the identifier and the switch's portnames of each virtual fabric which includes the switch's port or ports.For the vX ports, the profile indicates that the port is a vX type, i.e.vfabric extension type, connected to another switch in the vfabricextension. The switch also stores the port's vX ID. The switch will notrun domain ID assignment protocols on the vX ports. The vfabric may alsoinclude E-ports, such as port P2 of switch 220.1, on which the switchmay run the Domain ID assignment protocol to assign a Domain ID toswitch 220.1.

In some embodiments, the switches use the Fabric Shortest Path First(FSPF) routing protocol to discover each other and create theirforwarding tables, as is common in FC or FCoE networks. Other routingprotocols can also be used in some embodiments of the presentdisclosure. A loop prevention protocol can be run in the vfabricextension switches to eliminate loops. Such protocols are well known.The FCoE data forwarding can be modified to allow forwarding based onthe vX ID bits of FCID. For example, FIG. 3 shows forwarding tableentries 310 for each vX port; these tables indicate reachability ofother vfabric extension switches 220.1, 220 x from that port. Forexample, table 310 for switch 220.1 indicates that the switch's port vX1can be used to reach vX ID 01 (i.e. switch 220 x.1), and port vX2 can beused to reach vX IDs 10 (switch 220 x.2) and 11 (switch 220 x.3).

To forward an incoming frame, switch 220.1 checks the destination FCIDof an incoming frame, and if the domain ID is DID1, then the switchdetermines the destination vX ID from the FCID bits, and determines theoutgoing port from table 310.

For switch 220 x.3, table 310 specifies that all the other extensionswitches 220.1, 220 x are reachable through port vX1.

For switch 220 x.1, table 310 specifies only the switch 220.1 asreachable through port vX1. While the other extension switches are alsophysically reachable, they are logically blocked, i.e. unreachable, bytable 310. In other embodiments, all the extension switches arereachable, and table 310 of switch 220 x.1 specifies vX IDs 00, 10, 11for port vX1.

In some embodiments, in each node 224, each port connected to a vfabricextension switch is configured to operate as an N-port, but can also beconfigured to operate as a virtualized N-port for NPV (N-PortVirtualization) or NPIV (N-Port ID Virtualization). In virtualizationmodes, the port can be associated with different World-Wide Names (WWNs)to either connect different devices to the switch port or to function asif representing different devices. Likewise, in each vfabric extensionswitch 220.1, 220 x, each port connected to a node 224 can operate inF-port mode or in NPV or NPIV mode.

The extended vfabric vf1 provides the usual FCoE services such as Login(FLOGI, PLOGI, PRLI), Directory service, Fabric controller service, andother services. In particular, each node 224 obtains its FCID from thevfabric in response to fabric login (FLOGI). A vX port may or may not bea logical port, e.g. an Ethernet port-channel.

The extended fabric's switches run the FCoE Initialization Protocol(FIP), except that there is no Domain ID assignment on the vX ports. Insome embodiments, for the vX ports, each switch periodically transmits aport descriptor frame specifying that the port is of type vX, andproviding the port's vX ID and the list of vX IDs reachable from theport (as in the switch's table 310).

In some embodiments, the extended vfabric supports zoning, and zones mayinclude vX ports. As is known, a zone limits connectivity within aswitch fabric or vfabric, by defining entities that are members of thezone, i.e. are allowed to communicate with each other. The entities canbe nodes 224 and/or their ports and/or switches' ports includingpossibly vX ports, and/or other using types. If a node 224 changesstate—e.g. goes down, logs out, or changes its name, or a new node 224is added, or a target's storage is reconfigured, etc.—the affectedswitch 220 will notify the nodes 224 of the change via Registered StateChange Notifications, or RSCNs. The RSCNs are sent only to nodes in theaffected zone but not to other nodes. As shown at 320, each switch 220specifies, in its memory, each zone associated with the switch: for eachzone, the switch 220 identifies, in its memory, each entity belonging tothe zone; the entity can be, for example, the switch's port, or the node224 or its port, etc. Using the data 320, the switch can send RSCNs toall other nodes 224 affected by a change in the zone associated with theswitch.

As illustrated at 320, there are four zones: Z1, vF_Z2, vF_Z3, vF_Z4.Zone Z1 includes only nodes connected to a single switch (nodes 224.1and 224.2 connected to switch 220.1). Each of the other three zones,vF_Z2, vF_Z3, and vF_Z4, has nodes 224 connected to different switches.Such zones are called “special” herein. In one example, node 224.1 is aninitiator, and the nodes 224.2, 224.10, 224.11, 224.12 are targets. Thisexample is not limiting.

The zones can be defined in a usual way, by a network administrator forexample. If a zone is a special zone and is defined at any switch, theother switches associated with the zone can be informed via FIP. Inparticular, the other switches can be provided, via FIP, of thepertinent name server details (e.g. FCIDs) of the members of the zone.

In some embodiments, each virtual fabric, e.g. vf1, is associated withan Ethernet VLAN. The vfabric extensions are placed in the same VLAN.

Vfabric extensions can be provided using inexpensive switches that donot have full E-port functionality or FSPF capability. Networkscalability is improved as a result. FIG. 4 shows one example of such anextension. This is a spine/leaf network. Spine/leaf networks aredescribed, for example, in “Dell EMC Networking FCoE-to-Fibre ChannelDeployment with 54148U-ON in F_port Mode”, Dell EMC NetworkingInfrastructure Solutions, Dell, Inc, June 2018, incorporated herein byreference. In FIG. 4, FCoE switches 220.1, 220.2, 220.3 are leaves inthe spine/leaf network. Each switch 220 has vX ports vX1 and vX2connected, by respective Ethernet links, to respective Ethernet spineswitches 410.1 and 410.2. In addition, each leaf 220 is connected to oneor more initiator servers 224 h via FCoE links, and/or to one or moretargets 224 t via FC links. Servers 224 h are also connected to theInternet or some other network 420, possibly via Ethernet links and agateway router (not shown).

The spine 410 serves as an Ethernet bridge interconnecting the leaves220. The spine switches forward Ethernet and FCoE traffic based on MACaddresses, ignoring the FCIDs in the FCoE frames. An FCoE frametransmitted by a leaf 220 on a port vX1 or vX2 has the source MACaddress set to the MAC address of the transmitting port vX1 or vX2; thedestination MAC address set to MAC address of the port vX1 or vX2 of thedestination leaf 220; and source and destination FCIDs set to the FCIDsof the source and target ports on nodes 224.

Virtual fabrics can be defined to include vX ports and other ports. Avfabric may have no E-ports. For example, a vfabric may include theports vX1 on leaves 220.1 and 220.2, and ports connected to nodes 224,using the techniques of FIG. 3. In some embodiments, all the switches220 of FIG. 4 have the same Domain ID in each vfabric.

In some embodiments, each fabric corresponds to an Ethernet VLANincluding the vfabric's FCoE ports and also including those ports ofswitches 410 that can carry the vfabric's traffic. New leaf and/or spineswitches can be added to the network when needed, and the vfabrics canbe extended to include ports of the additional leaf switches. In someembodiments, the switches 220 do not have full E-port functionality. Thesystem cost can therefore be reduced.

Some embodiments of the invention are defined by the following clauses.

Clause 1 defines a method comprising data transfer between computernodes (e.g. 224) in a computer network comprising a plurality ofswitches (e.g. 220) and a virtual switch fabric (e.g. vf1) comprising aplurality of switch ports which are ports of said switches and which areinterconnected by one or more communication links, at least two switchports belonging to respective different switches of the plurality ofswitches, wherein each switch is operable to forward first data units(e.g. FC frames) sent by the computer nodes whose ports are connected tothe switches, the ports of the computed nodes operating according to afirst protocol (e.g. FC) in which each port of the computer nodes isidentified by a first address comprising a domain ID portion forcarrying a logical address identifying a switch to which the port isconnected;

wherein each communication link is operable to carry second data units(e.g. Ethernet frames) according to a second protocol, with each seconddata unit comprising a second address (e.g. AC address) identifying anend of the communication link;

wherein each communication link is operable to carry first data unitsencapsulated into second data units;

wherein for at least one first data unit sent from a computer node'sport connected to a first switch port of the virtual switch fabric to acomputer node's port connected to a second switch port of the virtualswitch fabric, at least one switch forwards the at least one first dataunit based on a virtual fabric extension ID of the at least one firstdata unit's first address and not based on the domain ID portion of theat least one first data unit's first address, the virtual fabricextension ID not comprising the domain ID portion.

2. The method of clause 1, wherein in the first address of the at leastone first data unit, the domain ID portion does not identify a switch.

3. The method of clause 1 or 2, wherein virtual fabric extension ID hasfewer bits than the domain ID.

4. The method of any preceding clause, wherein within the virtualfabric, a plurality of switches have the same domain ID.

5. The method of any preceding clause, wherein the first data units areformed according to Fibre Channel (FC) protocol, and the second dataunits are formed according to Ethernet protocol.

6. The method of any preceding clause, wherein the first data units areformed according to a point-to-point protocol, and the second data unitsare formed according to a point-to-multipoint protocol. For example, FCis a point-to-point protocol; when transmitted on an FC link, an FCframe specifies the final source and destination FCIDs, but does notspecify the ends of the link. In contrast, Ethernet is apoint-to-multipoint protocol, and an Ethernet frame transmitted on anEthernet link includes the Ethernet (MAC) addresses of the linkendpoints.

7. The method of any preceding clause wherein at least one communicationlink is a wireless link. In particular, an FC or FCoE link can be wiredor wireless.

8. The method of any preceding clause wherein at least one communicationlink comprises a passthrough switch (e.g. 410) forwarding second dataunits according to the second addresses but not the first addresses.

9. The method of any preceding clause wherein at least one said computernode is connected to at least one said switch by a communication link(e.g. FC link between a node 224 t and a switch 220.1 in FIG. 4) whichis for carrying first data units not encapsulated into second dataunits, the switch being operable to encapsulate the first data unitsinto second data units for transmission within the virtual fabric.

10. The method of any preceding clause wherein at least one saidcomputer node is connected to at least one said switch by acommunication link (e.g. FC link between a node 224 t and a switch 220.1in FIG. 4) which is for carrying data comprising no addresses other thanthe first destination addresses. For example, FC links can transmit FCframes without appending the Ethernet addresses or any other addressesthan the FCIDs.

Some embodiments include switches or computer nodes operating accordingto methods described above. Some embodiments include computer readablemedia comprising computer instructions causing the switches or thecomputer nodes to perform the methods described above.

Although illustrative embodiments have been shown and described, a widerange of modification, change and substitution is contemplated in theforegoing disclosure and in some instances, some features of theembodiments may be employed without a corresponding use of otherfeatures. Accordingly, it is appropriate that the appended claims beconstrued broadly and in a manner consistent with the scope of theembodiments disclosed herein.

What is claimed is:
 1. A method comprising data transfer betweencomputer nodes in a computer network comprising a plurality of switchesand a virtual switch fabric comprising a plurality of switch ports whichare ports of said switches and which are interconnected by one or morecommunication links, at least two switch ports belonging to respectivedifferent switches of the plurality of switches, wherein each switch isoperable to forward first data units sent by the computer nodes whoseports are connected to the switches, the ports of the computed nodesoperating according to a first protocol in which each port of thecomputer nodes is identified by a first address comprising a domain IDportion for carrying a logical address identifying a switch to which theport is connected; wherein each communication link is operable to carrysecond data units according to a second protocol, with each second dataunit comprising a second address identifying an end of the communicationlink; wherein each communication link is operable to carry first dataunits encapsulated into second data units; wherein for at least onefirst data unit sent from a computer node's port connected to a firstswitch port of the virtual switch fabric to a computer node's portconnected to a second switch port of the virtual switch fabric, at leastone switch forwards the at least one first data unit based on a virtualfabric extension ID of the at least one first data unit's first addressand not based on the domain ID portion of the at least one first dataunit's first address, the virtual fabric extension ID not comprising thedomain ID portion.
 2. The method of claim 1, wherein in the firstaddress of the at least one first data unit, the domain ID portion doesnot identify a switch.
 3. The method of claim 2, wherein virtual fabricextension ID has fewer bits than the domain ID.
 4. The method of claim2, wherein within the virtual fabric, a plurality of switches have thesame domain ID.
 5. The method of claim 1, wherein the first data unitsare formed according to Fibre Channel (FC) protocol, and the second dataunits are formed according to Ethernet protocol.
 6. The method of claim1, wherein the first data units are formed according to a point-to-pointprotocol, and the second data units are formed according to apoint-to-multipoint protocol.
 7. The method of claim 1 wherein at leastone communication link is a wireless link.
 8. The method of claim 1wherein at least one communication link comprises a passthrough switchforwarding second data units according to the second addresses but notthe first addresses.
 9. The method of claim 1 wherein at least one saidcomputer node is connected to at least one said switch by acommunication link which is for carrying first data units notencapsulated into second data units, the switch being operable toencapsulate the first data units into second data units for transmissionwithin the virtual fabric.
 10. The method of claim 1 wherein at leastone said computer node is connected to at least one said switch by acommunication link which is for carrying data comprising no addressesother than the first destination addresses.
 11. A first switchconfigured to operate in a computer network to transfer data betweencomputer nodes, the computer network comprising a plurality of switchescomprising the first switch, and comprising a virtual switch fabriccomprising a plurality of switch ports which are ports of said switchesand which are interconnected by one or more communication links, atleast two switch ports belonging to respective different switches of theplurality of switches, wherein each switch is operable to forward firstdata units sent by the computer nodes whose ports are connected to theswitches, the ports of the computed nodes operating according to a firstprotocol in which each port of the computer nodes is identified by afirst address comprising a domain ID portion for carrying a logicaladdress identifying a switch to which the port is connected; whereineach communication link is operable to carry second data units accordingto a second protocol, with each second data unit comprising a secondaddress identifying an end of the communication link; wherein eachcommunication link is operable to carry first data units encapsulatedinto second data units; wherein for at least one first data unit sentfrom a computer node's port connected to a first switch port of thevirtual switch fabric to a computer node's port connected to a secondswitch port of the virtual switch fabric, the first switch forwards theat least one first data unit based on a virtual fabric extension ID ofthe at least one first data unit's first address and not based on thedomain ID portion of the at least one first data unit's first address,the virtual fabric extension ID not comprising the domain ID portion.12. The first switch of claim 11, wherein in the first address of the atleast one first data unit, the domain ID portion does not identify aswitch.
 13. The first switch of claim 12, wherein virtual fabricextension ID has fewer bits than the domain ID.
 14. The first switch ofclaim 12, wherein within the virtual fabric, a plurality of switcheshave the same domain ID.
 15. The first switch of claim 11, wherein thefirst data units are formed according to Fibre Channel (FC) protocol,and the second data units are formed according to Ethernet protocol. 16.The first switch of claim 11, wherein the first data units are formedaccording to a point-to-point protocol, and the second data units areformed according to a point-to-multipoint protocol.
 17. The first switchof claim 11 wherein at least one communication link is a wireless link.18. The first switch of claim 11 wherein at least one communication linkcomprises a passthrough switch forwarding second data units according tothe second addresses but not the first addresses.
 19. The first switchof claim 11 wherein at least one said computer node is connected to atleast one said switch by a communication link which is for carryingfirst data units not encapsulated into second data units, the switchbeing operable to encapsulate the first data units into second dataunits for transmission within the virtual fabric.
 20. The first switchof claim 11 wherein at least one said computer node is connected to atleast one said switch by a communication link which is for carrying datacomprising no addresses other than the first destination addresses.